const gulp = require('gulp');
const gulp_concat = require('gulp-concat');
const gulp_uglify = require('gulp-uglify');
const gulp_rename = require('gulp-rename');
const gulp_minCss = require('gulp-minify-css');
const gulp_imgMin = require('gulp-imagemin');
const gulp_babel = require('gulp-babel');

// gulp.task(任务名称,回调函数);

gulp.task("copy", function() {
    // console.log("heihei");

    //文件源               管道  
    // gulp.src("index.html").pipe(gulp.dest("d:/dest"));

    //如果直接拷贝文件夹那真的就只拷贝文件夹
    //gulp.src("js").pipe(gulp.dest("d:/dest"));

    //拷贝文件夹里内容的方法为:文件夹/**/*/
    gulp.src("bigJS/**/*").pipe(gulp.dest("d:/dest"));
});

//监听
gulp.task("watch", function() {
    //只能监听一次
    gulp.watch("index.html", function() {
        gulp.src("index.html").pipe(gulp.dest("d:/dest"));
    });
});

//合并文件
// gulp_concat("合并之后的文件名称")
gulp.task("concat", function() {
    gulp.src(["bigJS/js/1.js", "bigJS/js/2.js"]).pipe(gulp_concat("tools.js"))
        .pipe(gulp.dest("d:/dest"));
});

//压缩
// gulp_uglify(无参);
gulp.task("uglify", function() {
    gulp.src("js/**/*").pipe(gulp_uglify()).pipe(gulp.dest("d:/destin"));
});

//重命名
// gulp_rename(修改后的文件名称)
//合并压缩且改名
gulp.task("rename", function() {
    gulp.src(["bigJS/js/1.js", "bigJS/js/2.js"]).pipe(gulp_concat("tool.js")).
    pipe(gulp_uglify()).pipe(gulp_rename("tool.min.js")).pipe(gulp.dest("d:/dest"));
});

//压缩css
// gulp_minCss(无参)
gulp.task("minCss", function() {
    gulp.src("css/**/*").pipe(gulp_minCss()).pipe(gulp.dest("d:/dest"));
});

//压缩图片
// gulp_imgMin(无参):
gulp.task("imgMin", function() {
    gulp.src("imgs/**/*").pipe(gulp_imgMin()).pipe(gulp.dest("d:/dest"));
});

//ES6->ES5
// gulp_babel({presets: ['es2015']});
gulp.task("es6Toes5", function() {
    gulp.src("mf.js").pipe(gulp_babel({ presets: ['es2015'] })).pipe(gulp.dest("d:/dest"));
});